package com.funong.matrix.biz.system.facade.impl;

import com.funong.matrix.biz.base.entity.SysTagEntity;
import com.funong.matrix.biz.system.domain.SysTagDomainDao;
import com.funong.matrix.biz.system.facade.SysTagFacade;
import com.funong.matrix.biz.base.entity.SysUserEntity;
import com.funong.matrix.core.dto.QueryDTO;
import com.funong.matrix.core.dto.Result;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * @author : NaNa
 * @since : 2023-05-19 17:01
 **/
@Slf4j
@Service
public class SysTagFacadeImpl implements SysTagFacade {

    @Resource
    private SysTagDomainDao sysTagDomainDao;

    @Override
    public Boolean saveTag(SysTagEntity sysTagEntity) {
        Integer parentId = sysTagEntity.getParentId();
        if (parentId == null)
            sysTagEntity.setParentId(-1);
        if(sysTagEntity.getTagLevel()==null)
            sysTagEntity.setTagLevel(2);
        return sysTagDomainDao.saveTag(sysTagEntity);
    }

    @Override
    public Boolean deleteTag(Integer id) {
        return sysTagDomainDao.deleteTag(id);
    }

    @Override
    public SysUserEntity queryTagById(Integer id) {
        return null;
    }

    @Override
    public Boolean updateTag(SysTagEntity sysTagEntity) {
        return sysTagDomainDao.updateTag(sysTagEntity);
    }

    @Override
    public Result queryTag(QueryDTO<SysTagEntity> queryDTO) {
        return sysTagDomainDao.queryTag(queryDTO);
    }

}
